Method and device for displaying a web page

ABSTRACT

Embodiments of the present application relate to a method for displaying a web page, a system for displaying a web page, and a computer program product for displaying a web page. A method for displaying a web page is provided. The method includes pre-processing text information to be picture processed in a web page, creating a picture, generating a position description for each text block in the picture, filling the corresponding text blocks into the picture based on the position descriptions, generating a call address for the picture, and correspondingly saving the call address and the position description of each text block as metadata. If an access request for the web page is received, invoking the metadata, loading the picture, selecting at least one corresponding text block from the picture, and displaying the at least one text block is performed.

CROSS REFERENCE TO OTHER APPLICATIONS

This application claims priority to People's Republic of China PatentApplication No. 201310293720.7 entitled A PICTURE PROCESSING-BASED WEBPAGE DISPLAY METHOD AND WEB PAGE DISPLAY DEVICE, filed Jul. 12, 2013which is incorporated herein by reference for all purposes.

FIELD OF THE INVENTION

The present application relates to a method and device for displaying aweb page.

BACKGROUND OF THE INVENTION

In the Internet age, information is nearly limitless. Methods involvingacquiring information have undergone changes, from flipping through abook, looking up a word in a dictionary, or conducting searches viasearch engines.

Today, there is so much information that differentiating or selecting apiece of information can be difficult. Therefore, many conventionalmethods are used to automatically capture data on the Internet,automatically differentiate the data, and analyze the data. Based onautomatic keyword identification techniques, information to be used isselected from vast quantities of information.

Conventionally, “web page data capture” involves acquiring web page datausing web crawlers or similar tools and then extracting useful data fromthe acquired web page data using program analysis. Part of whatconventional search engines do is extracting web page data. As anexample of a web page data extraction, a program extracts a newsheadline from a news channel of Sina.com.

On the other hand, many companies now are preventing their onlineinformation from being acquired by others. In other words, companies arepreventing other organizations or individuals from obtainingunauthorized data via web page data acquisition technology. For example,product divisions of some companies have discovered that authenticatedcommercial licensing information on their own company websites haveappeared on other non-company websites. The product divisions of thesecompanies have deduced that the commercial licensing information wasacquired via a web crawler or similar tools. Such illicit acquisition ofthe information of others without consent of the authorizing party orowner is illegal. However, owners have no choice other than disclosingthis information on the Web in order to make public their lawful status.

Therefore, to prevent the capture of information disclosed on the Web byweb crawlers or other such tools, some websites have adopted atext-to-picture processing method. In this way, the websites can preventweb crawlers or other such tools from capturing information disclosed ontheir websites.

However, in the above text-to-picture processing method, when a page hasmany “text pictures” to be displayed, browsers, regardless of type, willhave to issue many Hypertext Transfer Protocol (HTTP) requests todisplay the text pictures (one request per picture). The issuing of themany HTTP requests has a large impact on front-end performance of pagedisplay.

In summary, picture processing of text used to hinder web crawlers orother such tools from capturing information disclosed on the web alsocauses a slowdown in browsers when displaying web pages having manypictures.

BRIEF DESCRIPTION OF THE DRAWINGS

Various embodiments of the invention are disclosed in the followingdetailed description and the accompanying drawings.

The drawings described here are intended to further the understanding ofthe present application, and they constitute a part of the presentapplication. The illustrative embodiments of the present application andthe descriptions thereof are intended to explain the present applicationand do not constitute inappropriate limitations of the presentapplication. Among the drawings:

FIG. 1 is a flow chart of an embodiment of a process for displaying aweb page.

FIG. 2A is a flow chart of another embodiment of a process fordisplaying a web page.

FIG. 2B is a flow chart of an embodiment of a process for preprocessingtext information to be picture processed.

FIG. 3A is an example of a web page display position.

FIG. 3B is an example of a picture of text-filled blocks.

FIG. 3C is a diagram of another example of a web page display position.

FIG. 3D is a diagram of another example of a picture of text-filledblocks.

FIG. 4 is a structural diagram of an embodiment of a device fordisplaying a web page.

FIG. 5 is a structural diagram of an embodiment of a text processingmodule.

FIG. 6 is a diagram of an embodiment of a system for displaying a webpage.

FIG. 7 is a functional diagram illustrating an embodiment of aprogrammed computer system for displaying a web page.

FIG. 8 is a diagram of an example of a display frame.

DETAILED DESCRIPTION

The invention can be implemented in numerous ways, including as aprocess; an apparatus; a system; a composition of matter; a computerprogram product embodied on a computer readable storage medium; and/or aprocessor, such as a processor configured to execute instructions storedon and/or provided by a memory coupled to the processor. In thisspecification, these implementations, or any other form that theinvention may take, may be referred to as techniques. In general, theorder of the steps of disclosed processes may be altered within thescope of the invention. Unless stated otherwise, a component such as aprocessor or a memory described as being configured to perform a taskmay be implemented as a general component that is temporarily configuredto perform the task at a given time or a specific component that ismanufactured to perform the task. As used herein, the term ‘processor’refers to one or more devices, circuits, and/or processing coresconfigured to process data, such as computer program instructions.

A detailed description of one or more embodiments of the invention isprovided below along with accompanying figures that illustrate theprinciples of the invention. The invention is described in connectionwith such embodiments, but the invention is not limited to anyembodiment. The scope of the invention is limited only by the claims andthe invention encompasses numerous alternatives, modifications andequivalents. Numerous specific details are set forth in the followingdescription in order to provide a thorough understanding of theinvention. These details are provided for the purpose of example and theinvention may be practiced according to the claims without some or allof these specific details. For the purpose of clarity, technicalmaterial that is known in the technical fields related to the inventionhas not been described in detail so that the invention is notunnecessarily obscured.

FIG. 1 is a flow chart of an embodiment of a process for displaying aweb page. In some embodiments, the process 100 is implemented by aserver 620 of FIG. 6 and comprises:

In 110, the server pre-processes text information to be pictureprocessed in a web page to be displayed. The pre-processing of the textinformation includes setting up display frames in the web page andsplitting the text information into text blocks based on the displayframes.

FIG. 8 is a diagram of an example of a display frame. A display framerefers to a display style of text on a web page. Properties such as thedisplay style include whether the text is bold, whether the text isitalicized, the text's line height, etc. The display style aids indetermining how much a text block occupies on the web page. The displayframe is also referred to as a display block.

Blocks within the webpage for displaying text often have limits on lineheight and line width. The browser will do string segmentation on theblocks based on the line width automatically. For example, “ApartmentA26-A7” of FIG. 8 is automatically displayed in the next line. But whenusing pre-generated pictures, pre-segmentation needs to be performedbased on character style and other properties to specify the amount oftext string that the line width can accept, and to segment the textahead of time.

The setting up of a display frame in a web page comprises identifyingdisplay positions of text information in the web page and setting amaximum line width of display frames according to widths of the displaypositions of the text information.

In some embodiments, heights of the display frames responsively match aline height of a single line of the text information. The line height ofthe text block is determined based on the display position of the textblock, and different line heights mean generated text blocks requiredifferent amounts of space to be reserved above or below a text block.The reserved space above or below the text block is to match the amountof space automatically reserved by the browser.

In some embodiments, line width of the text information is less than orequal to a maximum line width of the display frames, and heights of thetext blocks are equal to the line height of a single line of the textinformation. Web page display frames all have width limitation. When abrowser processes text, the browser automatically adjusts the lines oftext. However, for text images, the lines have to be adjusted at thetime the image is generated.

In some embodiments, the splitting of the text information includessplitting text information having a natural semantic significance, yetthe text to be segmented into text blocks can be unrelated to naturalsemantics. Dimensions of the text blocks are based on dimensions of thedisplay frames. However, the display frames are related to the displaypositions of the text information on the web page. Therefore, thesplitting of the text information is performed for more convenientstorage and display.

Referring back to FIG. 1, in 120, the server creates a picture andgenerates a position description for each text block in the picture.

One reason to create the picture ahead of time is to avoid having torepeatedly create the picture, and also the picture can be stored (e.g.,on a content distribution network (CDN)) to increase performance. Theprocess for creating the picture includes a process of taking multipletext blocks of different sizes and filling the text blocks appropriatelyinto a blank picture. To create the picture, the blank picture having acertain length and width is specified so that all the text blocks canfit within the blank picture. In some embodiments, for each text blockto be filled in the picture, relative coordinates for the upper lefthand corner of the text block relative to the picture are used. Theserelative coordinates correspond to the position description. Thecoordinates are used as a position of the text blocks within the wholepicture when the web page is displayed.

In 130, the server fills the corresponding text blocks into the picturebased on the corresponding position descriptions, saves the filledpicture, and generates a call address for the picture.

In some embodiments, the server generates a Uniform Resource Locator(URL) as the call address.

In 140, the server correspondingly saves the call address of the pictureand the position description of each text block in the picture asmetadata for the web page.

In 150, when receiving an access request for the web page, the serverinvokes the web page metadata, loads the picture based on the calladdress in the web page metadata, selects the corresponding text blocksfrom the picture based on the position descriptions in the metadata forthe web page, and displays the text blocks in the corresponding displaypositions in the web page.

If, when the server receives an access request for the web page, themetadata for the web page cannot be found, the server skips to andexecutes operation 110 to generate the metadata for the web page anddisplays the web page.

In some embodiments, the metadata includes: a call address or link forvisiting the picture or image formed from operation 120 and a length anda width, an offset, or a combination thereof in the picture describedabove.

FIG. 2A is a flow chart of another embodiment of a process fordisplaying a web page. In some embodiments, the process 200 isimplemented by a server 620 of FIG. 6 and comprises:

In 210, the server pre-processes text information to be pictureprocessed.

FIG. 2B is a flow chart of an embodiment of a process for preprocessingtext information to be picture processed in a web page to be displayed.In some embodiments, the process 800 is implemented by a server 620 ofFIG. 6 and comprises:

In 810, the server sets display frames in the web page.

In 820, the server splits the text information into text blocksaccording to the display frames.

In some embodiments, the setting up of the display frames comprises:identifying display positions of the text information in the web page,and setting the maximum line width of the display frames according towidths of the display positions. In some embodiments, a height of thedisplay frames responsively matches a line height of a single line ofthe split text information. A display position refers to a display blockand represents a block within a web page. The block has a width limitsince it is a part of the web page. Typically, portions of textexceeding the web page are to be ignored (or not displayed) or therewould be a line change.

Please note that not all the widths of the text blocks are necessarilyequal to the maximum width. In some embodiments, the widths vary as aresult of different numbers of characters in each text block anddifferent text styles. Therefore, the widths of the text blocks aresmaller than or equal to the maximum line width, and the height of thetext blocks is equal to the height of a single line of the split textinformation.

Although each text block is a single line, each text block can havedifferent text styles, and the different text styles can have differentsizes. Thus, dimensions of each text block can be different whichcomplicates the task of filling a picture with text blocks. Therefore,in some embodiments, all text blocks are to be streamlined usingoperations 830 and 840 below.

In 830, the server acquires a text style in each text block andcalculates dimensions of each text block according to the text style ineach text block.

In some embodiments, a text style is specified when a text block isformed, and the text style is stored as configuration information. Also,line height and line width are specified when a web page is programmed.

The text styles include font, font size, line height, bold or not,italics or not, colored font, background color, or any combinationthereof

In 840, the server identifies the text block with a maximum height,selects a fraction of the height of the text block with the maximumheight as a threshold, and groups the various text blocks based on thethreshold and the height of the text block with the maximum height.

In some embodiments, padding is performed to more reasonably lay out thetext blocks in the picture by making the picture occupy a small storagespace. Since the text blocks have different sizes, the technique firststores the largest text block, then stores smaller (more problematic)blocks. In this technique, all the text blocks are analyzed to obtainthe largest text block or to order text blocks by size.

In some embodiments, one or more of the thresholds are selected. Forexample, the thresholds include: “Line height of text block with maximumheight,” “Line height of text block with maximum height/2,” “Line heightof text block with maximum height/4,” “Line height of text block withmaximum height/8,” etc. Of course, the thresholds are not limited tothese examples. By using the ranges defined by these thresholds (e.g.,ranges of (maximum height/8, maximum height/4], (maximum height/4,maximum height/2], etc.), the various text blocks are divided intoseveral groups. Text blocks within any single group will have heightswithin the range of that group.

By grouping and then concatenating the text blocks, the exterior shapeof the concatenation of the text blocks becomes more regular and closerto a rectangle. Because pictures used for filling are typicallyrectangular, the picture-filling space utilization ratio can thus bemaximized and the quantity of created and saved pictures can be reduced.This grouping and concatenating of the text blocks reduces the storagespace used on servers.

In 850, the server combines the dimensions of each text block with thegroups of corresponding text blocks to set up a concatenation of all thetext blocks and allocates the dimensions of each text block for apicture that accommodates all text blocks based on the concatenation ofall the text blocks.

Referring back to FIG. 2A, in 220, the server creates the pictureaccording to the dimensions allocated for a picture that accommodatesall text blocks.

In 230, the server generates a position description for each text blockin the picture. In other words, the server positions boundaries of eachtext block in the picture based at least in part on: the dimensions ofthe picture, the concatenation of all the text blocks, and thedimensions of each text block; and generates a position description foreach text block based on the boundaries of each text block.

In 240, the server fills the corresponding text blocks into the picturebased on the position descriptions, saves the filled picture, andgenerates a call address (e.g., a URL) for the picture.

In 250, the server correspondingly saves the call address of the pictureand the position description of each text block in the picture asmetadata for the web page.

For example, the picture is stored in a file server, and the calladdress and the positions of the text block are all stored as metadatain a persistent cache (e.g., stored in leveldb).

In 260, when receiving an access request for the web page, the serverinvokes the metadata of the web page, loads the picture according to thecall address in the metadata of the web page, and selects thecorresponding text blocks from the picture based on the positiondescriptions in the metadata in the web page and the text blocks in thecorresponding display positions in the web page are displayed.

When an access request is received for the web page, the web page isopened and the picture is loaded. Code for the corresponding displaypositions on the web page is read and executed, and the metadatacorresponding to the web page is automatically invoked.

If, when the access request is received for the web page, the servercannot find the metadata for the web page, then the server skips to andperforms operation 210 to generate the metadata for the web page anddisplays the web page.

In some embodiments, the actual operation of setting up display framesand splitting the text information into text blocks based on the displayframes are implemented through Java's original application programminginterface “LineBreakMeasurer” class. The implementation is describedbelow using an application example.

FIG. 3A is an example of a web page display position. FIG. 3B is anexample of a picture of text-filled blocks.

As in FIG. 3A, Chinese text information to be displayed in a web page is“

***

[China, Jiangsu, Wuxi, Jiangyin City***Industrial Park].” The maximumwidth for identifying the web page display position is insufficient fordisplaying “

***

[China, Jiangsu, Wuxi, Jiangyin City***Industrial Park].” The Chinesetext information is to be divided into two lines to be displayed.

A “LineBreakMeasurer” class is used to calculate the display positionmaximum width so as to make the cut to include the position of the “

[City]” character in “

***

” If the cut-off position is not appropriate—if, for example, the cutdoes not include a complete character, then the cut-off position isfine-tuned to accommodate the complete character. Typically, the cut-offdepends on a display area's width where an excess portion causes a linebreak. For the string

***

, the display area's width was reached at the character

. Subsequently, the cut-off was made. Finally, the appropriate maximumline width for the display frame is selected.

As shown in FIG. 3B, display frames are set up based on this maximumline width and the line height of “

***

.” The display frames are used to divide “

***

” into two separate text blocks: “

” and “***

.” In some embodiments, the cut-off of a line is determined based on themaximum line width of a display frame.

Both operations 150 of FIGS. 1 and 260 of FIG. 2A include selecting thecorresponding text blocks from the picture based on the positiondescriptions in the metadata of the web page and displaying the textblocks in the corresponding display positions in the web page. In someembodiments, the actual operation of the selecting of the correspondingtext blocks from the picture is implemented through a Cascading StyleSheet (CSS) technique.

An example is provided below to describe how the CSS technique is usedto implement the selecting of the corresponding text blocks from thepicture. In this example, the display uses a CSS offset technique, whichspecifies a picture and then displays different text blocks of thepicture in different positions on the web page, so the text blocks aredownloaded together and the number of transfers is reduced.

FIG. 3C is a diagram of another example of a web page display position.FIG. 3D is a diagram of another example of a picture of text-filledblocks.

In the example shown in FIG. 3D, a picture is entitled“text-image-pic1.”

In the example shown in FIG. 3C, a position description of the textblock “

***

” (marked with a black border) in this picture is“-0px-22px;width:179px;height:22px.” The unit “px” corresponds to pixel.

When a web page access request is received, the web page is opened andpictures are loaded. A code for the corresponding display position “

[Registered Address]” on the web page is read, and the correspondingmetadata for the web page is invoked based on the code.“text-image-pic1” is loaded according to the call address in themetadata for the web page.

Moreover, the text block with the position description “-0px-22px;width:179px;height:22px” is extracted from the picture“text-image-pic1” using CSS. The extraction using CSS refers to amechanism provided by CSS based on coordinates (e.g., width and length)to only display a portion of a picture. The extracted text block “

***

” is to be displayed. The CSS code below is used to place the text blockat a specified position in the web page. This text block is displayed atthe display position that corresponds to “

” [Registered Address] in the web page.

An example of the CSS code for displaying the text block is:

-   -   <p class=“text-image-pic1”        style=“display:inline-block;vertical-align:middle;background-position:-0px        -22px;width:179px;height:22px;”>    -   </p>

Different text blocks in the picture are extracted and displayed usingthe code described above. It is understood that other forms of codingcan be employed by one of ordinary skill and further discussions ofcoding are omitted for conciseness.

FIG. 4 is a structural diagram of an embodiment of a device fordisplaying a web page. In some embodiments, the device 400 implementsthe processes 100 of FIG. 1 or 200 of FIG. 2A and comprises: a textprocessing module 410, a picture generating module 420, a storagecontrol module 430, and a web page display module 440.

In some embodiments, the text processing module 410 pre-processes textinformation to be picture processed in a web page. In some embodiments,the pre-processing of the text information comprises: setting up displayframes and splitting the text information into text blocks based on thedisplay frames. When setting up the display frames, the text processingmodule 410 identifies display positions of the text information in theweb page, and sets a maximum line width of the display frames based onwidths of the display positions. In some embodiments, the height of thedisplay frames responsively matches a line height of a single line ofthe split text information. In some embodiments, the line widths of thetext blocks are less than or equal to the maximum line width, and theheights of the text blocks are equal to the line height of the singleline of the split text information.

In some embodiments, the picture generating module 420 creates a pictureand generates a position description for each text block in the picture,fills the corresponding text blocks into the picture based on theposition descriptions, saves the filled picture, and generates a calladdress for the picture. When creating the picture, the picturegenerating module 420 creates the picture based on dimensions allocatedby the text processing module 410 for a picture that accommodates alltext blocks. When generating the position descriptions, the picturegenerating module 420 positions boundaries of each text block in thepicture based on the dimensions of the picture, the concatenation of allthe text blocks, and the dimensions of each text block, and the picturegenerating module 420 generates a position description for each textblock based on the boundaries of each text block.

In some embodiments, the storage control module 430 correspondinglysaves the call address of the picture and the position description ofeach text block in the picture as metadata for the web page.

In some embodiments, the web page display module 440, when receiving anaccess request for the web page, invokes the metadata for the web page,loads the picture based on the call address in the metadata for the webpage, selects the corresponding text blocks from the picture based onthe position descriptions in the metadata of the web page, and displaysthe text blocks in the corresponding display positions in the web page.

FIG. 5 is a structural diagram of an embodiment of a text processingmodule. In some embodiments, the text processing module 500 is animplementation of the text processing module 410 of FIG. 4 andcomprises: a text splitting unit 510, a dimensions identifying unit 520,a text block grouping unit 530, and a combination allocating unit 540.

In some embodiments, the text splitting unit 510 sets up display framesand splits text information to be picture processed into text blocksbased on the display frames.

In some embodiments, the dimensions identifying unit 520 acquires a textstyle in each text block and calculates dimensions of each text blockbased on the text style in each text block. The text styles acquired bythe dimensions identifying unit 520 comprise: font, font size, lineheight, bold or not, italics or not, colored font, background color, orany combination thereof.

In some embodiments, the text block grouping unit 530 identifies a textblock with a maximum height, selecting a fraction of the height of thetext block with the maximum height as a threshold, and groups thevarious text blocks based on the threshold and the height of each textblock.

In some embodiments, the combination allocating unit 540 combines thedimensions of each text block with the groups of corresponding textblocks to set up a concatenation of all the text blocks, and allocatesdimensions for a picture that accommodates all text blocks based on theconcatenation.

FIG. 6 is a diagram of an embodiment of a system for displaying a webpage. In some embodiments, the system 600 includes a server 620 fordisplaying a web page connected to a client 610 via a network 630. Theclient 610 sends an access request for a web page to the server 620.

FIG. 7 is a functional diagram illustrating an embodiment of aprogrammed computer system for displaying a web page. As will beapparent, other computer system architectures and configurations can beused to display a web page. Computer system 700, which includes varioussubsystems as described below, includes at least one microprocessorsubsystem (also referred to as a processor or a central processing unit(CPU)) 702. For example, processor 702 can be implemented by asingle-chip processor or by multiple processors. In some embodiments,processor 702 is a general purpose digital processor that controls theoperation of the computer system 700. Using instructions retrieved frommemory 710, the processor 702 controls the reception and manipulation ofinput data, and the output and display of data on output devices (e.g.,display 718).

Processor 702 is coupled bi-directionally with memory 710, which caninclude a first primary storage, typically a random access memory (RAM),and a second primary storage area, typically a read-only memory (ROM).As is well known in the art, primary storage can be used as a generalstorage area and as scratch-pad memory, and can also be used to storeinput data and processed data. Primary storage can also storeprogramming instructions and data, in the form of data objects and textobjects, in addition to other data and instructions for processesoperating on processor 702. Also as is well known in the art, primarystorage typically includes basic operating instructions, program code,data and objects used by the processor 702 to perform its functions(e.g., programmed instructions). For example, memory 710 can include anysuitable computer-readable storage media, described below, depending onwhether, for example, data access needs to be bi-directional oruni-directional. For example, processor 702 can also directly and veryrapidly retrieve and store frequently needed data in a cache memory (notshown).

A removable mass storage device 712 provides additional data storagecapacity for the computer system 700, and is coupled eitherbi-directionally (read/write) or uni-directionally (read only) toprocessor 702. For example, storage 712 can also includecomputer-readable media such as magnetic tape, flash memory, PC-CARDS,portable mass storage devices, holographic storage devices, and otherstorage devices. A fixed mass storage 720 can also, for example, provideadditional data storage capacity. The most common example of massstorage 720 is a hard disk drive. Mass storage 712, 720 generally storeadditional programming instructions, data, and the like that typicallyare not in active use by the processor 702. It will be appreciated thatthe information retained within mass storage 712 and 720 can beincorporated, if needed, in standard fashion as part of memory 710(e.g., RAM) as virtual memory.

In addition to providing processor 702 access to storage subsystems, bus714 can also be used to provide access to other subsystems and devices.As shown, these can include a display monitor 718, a network interface716, a keyboard 704, and a pointing device 706, as well as an auxiliaryinput/output device interface, a sound card, speakers, and othersubsystems as needed. For example, the pointing device 706 can be amouse, stylus, track ball, or tablet, and is useful for interacting witha graphical user interface.

The network interface 716 allows processor 702 to be coupled to anothercomputer, computer network, or telecommunications network using anetwork connection as shown. For example, through the network interface716, the processor 702 can receive information (e.g., data objects orprogram instructions) from another network or output information toanother network in the course of performing method/process steps.Information, often represented as a sequence of instructions to beexecuted on a processor, can be received from and outputted to anothernetwork. An interface card or similar device and appropriate softwareimplemented by (e.g., executed/performed on) processor 702 can be usedto connect the computer system 700 to an external network and transferdata according to standard protocols. For example, various processembodiments disclosed herein can be executed on processor 702, or can beperformed across a network such as the Internet, intranet networks, orlocal area networks, in conjunction with a remote processor that sharesa portion of the processing. Additional mass storage devices (not shown)can also be connected to processor 702 through network interface 716.

An auxiliary I/O device interface (not shown) can be used in conjunctionwith computer system 700. The auxiliary I/O device interface can includegeneral and customized interfaces that allow the processor 702 to sendand, more typically, receive data from other devices such asmicrophones, touch-sensitive displays, transducer card readers, tapereaders, voice or handwriting recognizers, biometrics readers, cameras,portable mass storage devices, and other computers.

The computer system shown in FIG. 7 is but an example of a computersystem suitable for use with the various embodiments disclosed herein.Other computer systems suitable for such use can include additional orfewer subsystems. In addition, bus 714 is illustrative of anyinterconnection scheme serving to link the subsystems. Other computerarchitectures having different configurations of subsystems can also beutilized.

The units described above can be implemented as software componentsexecuting on one or more general purpose processors, as hardware such asprogrammable logic devices and/or Application Specific IntegratedCircuits designed to perform certain functions or a combination thereof.In some embodiments, the units can be embodied by a form of softwareproducts which can be stored in a nonvolatile storage medium (such asoptical disk, flash storage device, mobile hard disk, etc.), including anumber of instructions for making a computer device (such as personalcomputers, servers, network equipment, etc.) implement the methodsdescribed in the embodiments of the present invention. The units may beimplemented on a single device or distributed across multiple devices.The functions of the units may be merged into one another or furthersplit into multiple sub-units.

The methods or algorithmic steps described in light of the embodimentsdisclosed herein can be implemented using hardware, processor-executedsoftware modules, or combinations of both. Software modules can beinstalled in random-access memory (RAM), memory, read-only memory (ROM),electrically programmable ROM, electrically erasable programmable ROM,registers, hard drives, removable disks, CD-ROM, or any other forms ofstorage media known in the technical field.

Although the foregoing embodiments have been described in some detailfor purposes of clarity of understanding, the invention is not limitedto the details provided. There are many alternative ways of implementingthe invention. The disclosed embodiments are illustrative and notrestrictive.

What is claimed is:
 1. A method for displaying a web page, comprising:pre-processing text information to be picture processed in a web page,wherein the pre-processing of the text information comprises: setting updisplay frames, the display frames relating to display positions of thetext information; and splitting the text information into text blocksbased on the display frames; creating a picture; generating a positiondescription for each text block in the picture; filling thecorresponding text blocks into the picture based on the positiondescriptions of the text blocks; saving the filled picture;correspondingly saving a call address of the picture and the positiondescription of each text block in the picture as metadata for the webpage; and in the event that an access request for the web page isreceived: invoking the metadata for the web page; loading the picturebased on the call address in the metadata for the web page; selecting atleast one corresponding text block from the picture based on at leastone position description in the metadata for the web page; anddisplaying the at least one text block in the at least one displayposition in the web page.
 2. The method as described in claim 1,wherein: the setting up of the display frames comprises: identifying thedisplay positions of text information in the web page; and setting amaximum line width of the display frames based on widths of the displaypositions, height of the display frames responsively matching a lineheight of a single line of the text information.
 3. The method asdescribed in claim 2, wherein: line widths of the text blocks are lessthan or equal to the maximum line width of the display frames, andheights of the text blocks are equal to the line height of the singleline of the text information.
 4. The method as described in claim 1,wherein: the pre-processing of the text information further comprises:acquiring a text style in each text block; calculating dimensions ofeach text block based on the text style in each text block; identifyingthe text block with a maximum height; selecting a fraction of a heightof the text block with the maximum height as a threshold; and groupingthe various text blocks based on the threshold and a height of each textblock.
 5. The method as described in claim 4, wherein: thepre-processing of the text information comprises: combining thedimensions of each text block with the groups of corresponding textblocks to set up a concatenation of all the text blocks; and allocatingdimensions for the picture that accommodates all text blocks based onthe concatenation.
 6. The method as described in claim 5, wherein thecreating of the picture comprises creating the picture based on thedimensions allocated for the picture that accommodates all text blocks.7. The method as described in claim 5, wherein: the generating of theposition description for each text block in the picture comprises:positioning boundaries of each text block in the picture based on thedimensions for the picture, the concatenation of all the text blocks,and the dimensions of each text block; and generating the positiondescription for each text block based on the boundaries of each textblock.
 8. The method as described in claim 4, wherein the text stylecomprises: font, font size, line height, bold or not, italics or not,colored font, background color, or any combination thereof.
 9. A devicefor displaying a web page, comprising: at least one processor configuredto: pre-process text information to be picture processed in a web page,wherein the pre-processing of the text information comprises: set updisplay frames, the display frames relating to display positions of thetext information; and split the text information into text blocks basedon the display frames; create a picture; generate a position descriptionfor each text block in the picture; fill the corresponding text blocksinto the picture based on the position descriptions of the text blocks;save the filled picture; correspondingly save a call address of thepicture and the position description of each text block in the pictureas metadata for the web page; and in the event that an access requestfor the web page is received: invoke the metadata for the web page; loadthe picture based on the call address in the metadata for the web page;select at least one corresponding text block from the picture based onat least one position description in the metadata for the web page; anddisplay the at least one text block in the at least one display positionin the web page; and a memory coupled to the at least one processor andconfigured to provide the at least one processor with instructions. 10.The device as described in claim 9, wherein: the setting up of thedisplay frames comprises: identify the display positions of textinformation in the web page; and set a maximum line width of the displayframes based on widths of the display positions, height of the displayframes responsively matching a line height of a single line of the textinformation.
 11. The device as described in claim 10, wherein: linewidths of the text blocks are less than or equal to the maximum linewidth of the display frames, and heights of the text blocks are equal tothe line height of the single line of the text information.
 12. Thedevice as described in claim 9, wherein: the pre-processing of the textinformation further comprises: acquire a text style in each text block;calculate dimensions of each text block based on the text style in eachtext block; identify the text block with a maximum height; select afraction of a height of the text block with the maximum height as athreshold; and group the various text blocks based on the threshold anda height of each text block.
 13. The device as described in claim 12,wherein: the pre-processing of the text information comprises: combinethe dimensions of each text block with the groups of corresponding textblocks to set up a concatenation of all the text blocks; and allocatedimensions for the picture that accommodates all text blocks based onthe concatenation.
 14. The device as described in claim 13, wherein thecreating of the picture comprises creating the picture based on thedimensions allocated for the picture that accommodates all text blocks.15. The device as described in claim 13, wherein: the generating of theposition description for each text block in the picture comprises:position boundaries of each text block in the picture based on thedimensions for the picture, the concatenation of all the text blocks,and the dimensions of each text block; and generate the positiondescription for each text block based on the boundaries of each textblock.
 16. The device as described in claim 12, wherein the text stylecomprises: font, font size, line height, bold or not, italics or not,colored font, background color, or any combination thereof.
 17. Acomputer program product for displaying a web page, the computer programproduct being embodied in a tangible non-transitory computer readablestorage medium and comprising computer instructions for: pre-processingtext information to be picture processed in a web page, wherein thepre-processing of the text information comprises: setting up displayframes, the display frames relating to display positions of the textinformation; and splitting the text information into text blocks basedon the display frames; creating a picture; generating a positiondescription for each text block in the picture; filling thecorresponding text blocks into the picture based on the positiondescriptions of the text blocks; saving the filled picture;correspondingly saving a call address of the picture and the positiondescription of each text block in the picture as metadata for the webpage; and in the event that an access request for the web page isreceived: invoking the metadata for the web page; loading the picturebased on the call address in the metadata for the web page; selecting atleast one corresponding text block from the picture based on at leastone position description in the metadata for the web page; anddisplaying the at least one text block in the at least one displayposition in the web page.